#include <iostream>
#include <sstream>
#include <memory>
#include <string>
#include <jsoncpp/json/json.h>

//序列化
int main()
{
    const char* name = "小明";
    int age = 18;
    float score[] = {77.5,88,93.6};

    Json::Value root;    //创建Json数据对象，将数据保存到root对象中
    root["姓名"] = name;
    root["年龄"] = age;
    root["成绩"].append(score[0]);
    root["成绩"].append(score[1]);
    root["成绩"].append(score[2]);

    Json::StreamWriterBuilder swb;  //用于创建StreamWriter类
    std::unique_ptr<Json::StreamWriter> sw(swb.newStreamWriter()); //智能指针管理StreamWriter对象

    std::stringstream ss;  //ss一种文件流，存储各种数据
    sw->write(root,&ss);  //将root对象中的数据写入ss中
    std::string str = ss.str();
    std::cout<<str<<std::endl;
    return 0;
}